import { NgModule } from '@angular/core';
import { SharedModule } from '@shared';

import { BindEmailComponent } from './account/security/bind-emial.component';
import { DictEditComponent } from './dict/dict-edit.component';
import { DictIndexEditComponent } from './dict/dict-index-edit.component';
import { SystemDictComponent } from './dict/dict.component';
import { MenuPermissionEditComponent } from './menu/menu-permission-edit.component';
import { SystemMenuComponent } from './menu/menu.component';
import { ParamEditComponent } from './param/param-edit.component';
import { SystemParamComponent } from './param/param.component';
import { ResourceEditComponent } from './resource/resource-edit.component';
import { ResourceGroupComponent } from './resource/resource-group.component';
import { ResourceComponent } from './resource/resource.component';
import { RoleEditComponent } from './role/role-edit.component';
import { RoleMenuComponent } from './role/role-menu.component';
import { RoleResourceComponent } from './role/role-resource.component';
import { SystemRoleUserComponent } from './role/role-user.component';
import { SystemRoleComponent } from './role/role.component';
import { SystemRoutingModule } from './system-routing.module';
import { TenantEditComponent } from './tenant/tenant-edit.component';
import { SystemTenantUserComponent } from './tenant/tenant-user.component';
import { SystemTenantComponent } from './tenant/tenant.component';
import { ThirdUserComponent } from './third/third-user.component';
import { UserAddRecordComponent } from './user/user-add-record.component';
import { ComponentsUserChangeComponent } from './user/user-change.component';
import { SystemUserClueComponent } from './user/user-clue.component';
import { ComponentsUserDetailComponent } from './user/user-detail.component';
import { UserEditContractComponent } from './user/user-edit-contract.component';
import { UserEditComponent } from './user/user-edit.component';
import { ComponentsUserListBookComponent } from './user/user-list-book.component';
import { BookEditComponent } from './user/user-list-edit-book.component';
import { UserRoleComponent } from './user/user-role.component';
import { SystemUserSeaComponent } from './user/user-sea.component';
import { SystemUserTenantComponent } from './user/user-tenant.component';
import { ComponentsXlsxImportComponent } from './user/user-xls-expert.component';
import { SystemUserComponent } from './user/user.component';
import {NgOptimizedImage} from "@angular/common";

const COMPONENTS = [
  SystemRoleComponent,
  SystemMenuComponent,
  ResourceComponent,
  RoleMenuComponent,
  RoleResourceComponent,
  SystemUserComponent,
  SystemUserClueComponent,
  SystemUserSeaComponent,
  SystemDictComponent,
  SystemParamComponent,
  ThirdUserComponent,
  SystemTenantComponent,
  ComponentsUserListBookComponent
];
const COMPONENTS_NOROUNT = [
  UserEditComponent,
  RoleEditComponent,
  SystemRoleUserComponent,
  DictEditComponent,
  DictIndexEditComponent,
  MenuPermissionEditComponent,
  ResourceEditComponent,
  ResourceGroupComponent,
  UserRoleComponent,
  SystemUserTenantComponent,
  ParamEditComponent,
  BindEmailComponent,
  TenantEditComponent,
  SystemTenantUserComponent,
  ComponentsXlsxImportComponent,
  ComponentsUserChangeComponent,
  UserEditContractComponent,
  UserAddRecordComponent,
  BookEditComponent,
  ComponentsUserDetailComponent
];

@NgModule({
    imports: [SharedModule, SystemRoutingModule, NgOptimizedImage],
  declarations: [...COMPONENTS, ...COMPONENTS_NOROUNT]
})
export class SystemModule {}
